|
AutoCAD VBA : Elemente für Berabeitung markieren
KlaK am 20.08.2008 um 07:49 Uhr (0)
Guten Morgen Peter,wie Du schon anderswo erwähntest man lernt nie aus. Eine Möglichkeit Elemente automatisch zu markieren :Code:Dim ssCurr As AcadSelectionSetSelSet zuweisen und vorhandene Daten zurücksetzenSet ssCurr = ThisDrawing.SelectionSets("CURRENT")Set ssCurr = ThisDrawing.SelectionSets("PICKFIRST")ssCurr.ClearDim FilterType(1) As IntegerDim FilterData(1) As VariantFilterType(0) = 0 Objekt auswählenFilterData(0) = "Circle" KreisFilterData(0) = "LWPolyline" PolylinieFilterType(1) = 67 GP AcadSpace ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Alle AcadCircle und Polygone durchlaufen
KlaK am 10.08.2007 um 21:24 Uhr (0)
Hallo Peter,ich weis dass programmieren unheimlich Spaß machen kann, aber Du solltest nebenbei auch der Antwort von Stelli nachgehen.Der Block 60_40 bezeichnet eine Rohrklappe in der DN150 Leitung. Dort wird die Kamera eingesetzt. Daneben zeigen die Pfeile die Befahrungsrichtung an. In dem Musterausschnitt gibt es noch Putzstücke (so werden die Klappen auch manchmal bezeichnet) mit 60_60 (=Blockname) und Putzer (ebenfalls Blockname).Bei Deiner Programmierung möchtest Du bei Öffnung 1 beginnen und dann aufs ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : RGB Farbe Helligkeit
KlaK am 11.09.2015 um 15:33 Uhr (1)
Weil ich gerade etwas Zeit habe :Theoretisch könnte man sich ja das Helligkeitsverhalten aus der Autocad Farbpalette ableiten.Es gibt bei den Truecoloreinstellungen zwei Farbpaletten HSL und RGB. Bei den RGB-Farben kann man nur die Werte im Bereich von 0 bis 255 einstellen, beim HSL dagegen den Farbton, die Sättigung und die Helligkeit. Angezeigt werden aber auch die daraus berechneten RGB-Werte.Für die Standardfarbnummern wird von einer Sättigung von 100% und einer Helligkeit von 50% ausgegangen.Die Sta ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Attribute in AutoCAD über Excel VBA ausfüllen lassen
KlaK am 09.05.2017 um 23:13 Uhr (1)
Hallo Acaduser84, Willkommen im Forum Habe zwar gerade kein Autocad bei der Hand aber vielleicht auf die Schnelle ein paar Hinweise.Zunächst schreibst Du Du hast eine Autocadzeichnung die den Block "Rohrtabelle" enthält. Im Programm überprüfst Du zwar ob eine Autocadzeichnung geöffnet ist, falls nicht wird einfach eine neue Zeichnung geöffnet. Stellt sich mir natürlich gleich die Frage ob der Block in der Standardvorlage enthalten ist.Dann holst Du Dir die Blockdefinition und möchtest das Attribut der Def ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Userform automatisch oeffnen
KlaK am 18.11.2013 um 17:24 Uhr (1)
Zitat:Original erstellt von JoKurt87:Ich weiss zwar nicht wofuer das wichtig ist, in Bezug auf mein Problem, aber ihr habt danach gefragt, also bekommt ihr auch die Antwort. Ja, das ist schon wichtig Du könntest Dir z.B. den ganzen Zinnober mit activate / init sparen, wenn Du nach der Eingabe in der Exceltabelle, das Autocad mit der richtigen Zeichnung gleich von Excel aus aufrufst, die Einstellungen machen lässt und gleich an den Drucker schickst. Könnte sogar alles im Hintergrund geschehen ohne das der ...
|
| In das Form AutoCAD VBA wechseln |
|
Autocad VBA : Selektionsets Count - Nur bis 32767 Werte ??
KlaK am 17.12.2006 um 15:01 Uhr (0)
Hallo Nancy,hallo Carsten, danke für eure Antworten, jaja die lieben Handbücher !Habe den Fehler inzwischen gefunden - lag am Programm.wenn man bei 3d-Linien natürlich nur zwei Felder statt drei berücksichtigt .. (Prozedur wurde von Polylines übernommen und nicht korrigiert)@Carsten: SSet Filter wird schon angewendet, sonst wären es über 450000 Elemente und da steigt AutoCAD dann irgendwann aus.Grüße,Klaus
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : Polylinientransformation
KlaK am 17.12.2006 um 15:13 Uhr (0)
Hallo guska,das Problem scheint ja wirklich aktuell zu sein, wir haben momentan das gleiche. programm läuft zwar inzwischen, aber immer noch mit Fehlern.Wenn Du nur Polylines umwandelt willst, kannst Du es mit folgender Lisp-Routine von CADmium http://ww3.cad.de/foren/ubb/Forum259/HTML/001081.shtml Wenn Du es selber entwickeln möchtest, solltest Du bei den Polylines auch die Bögen berücksichtigen, und dann mußt Du natürlich die Höhen auf den Zwischenpunkten interpolieren.Für die Übernahme der Höhen aus Bl ...
|
| In das Form Autocad VBA wechseln |
|
AutoCAD VBA : Alle AcadCircle und Polygone durchlaufen
KlaK am 09.08.2007 um 18:01 Uhr (0)
Hallo Peter,aus dem Profil entnehme ich dass Du Student bist, also ein bißchen Zeit hast Dich mit der Materie zu beschäftigen (die habe ich als Arbeitender leider nicht so viel). Dennoch hast Du Dir da was vorgenommen.Ich würde über einen SelectionSet mit Filter auf den Layer und Element Kreis mir zunächst einmal die Auswahl einengen. (Lies doch mal hier)Danach kannst Du mit Hilfe der Koordinaten des Kreismittelpunktes und eines Suchradius den Text (methode selectatpoint()) und den Block (ist nicht immer l ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Elementtyp (bspw. Linie, Block, Text...) eines AcadObject ermitteln
KlaK am 20.09.2007 um 17:51 Uhr (0)
Aus der AutoCAD Hilfe (Beispiel GetEntity ): Zitat: Begin the selection Dim returnObj As AcadObject Dim basePnt As Variant On Error Resume Next The following example waits for a selection from the userRETRY: ThisDrawing.Utility.GetEntity returnObj, basePnt, "Select an object" If Err 0 Then Err.Clear MsgBox "Program ended.", , "GetEntity Example" Exit Sub Else returnObj.Update MsgBox "The object type is: " & returnObj.EntityName, , "GetEntity Example" returnObj.Update E ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Elementtyp (bspw. Linie, Block, Text...) eines AcadObject ermitteln
KlaK am 25.09.2007 um 10:33 Uhr (0)
Hallo Thom,komme leider erst jetzt dazu Dir zu antworten.Hast Du schon mal dran gedacht die Systeminfo im Profil auszufüllen? Ist manchmal hilfreich.Den Code oben habe ich aus der Hilfe zu AutoCAD 2008 kopiert (hatte ich gerade offen) und er funktioniert auch.Aber Du hast recht bisher hatte ich es auch immer über .ObjectName gemacht.Die Eigenschaft .EntityName scheint neu in 2008 zu sein.Habe zwar in der Hilfe schon mal gesucht, jedoch keinen Hinweis auf weitere Neuerungen gefunden. Vielleicht kann das jem ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Probleme ein dem Verstehen eines Codeabschnitts
KlaK am 07.12.2007 um 21:11 Uhr (0)
Hallo Gloem,betrachte es doch mal so:Du bekommst von der Methode GetAttributes das Feld zurückgeliefert in dem alle Namen (TagString) und Inhalte (TextString) aller zu dem Block gehörigen Attribute stehen.In Deinem Programm weist Du jetzt dem ersten Attribut (0) einen neuen Inhalt zu, nämlich die Punktnummer aus der Datenbank. Dies wird direkt in die entsprechende AutoCAD Tabelle eingetragen. In AutoCAD gibt es öfters Daten die nicht direkt anzusprechen sind, beispielsweise werden von vielen Programmen XDa ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Blöcke kopieren
KlaK am 10.12.2007 um 16:57 Uhr (0)
Hallo el Cuervo,Stelli hat Dir ja schon beschrieben wie Du auf die AutoCAD Objekte zugreifst.Schau Dir doch mal folgendes Beispiel aus dem Entwicklerhandbuch für ActivX und VisualBasic - erweiterte Zeichen- und Strukturierungsfunktionen - verwenden von Blöcken und Attributen anCode:Sub Ch10_InsertingABlock() Definieren des Blocks Dim blockObj As AcadBlock Dim insertionPnt(0 To 2) As Double insertionPnt(0) = 0 insertionPnt(1) = 0 insertionPnt(2) = 0 Set blockObj = ThisDrawing.Blocks.Add _ ...
|
| In das Form AutoCAD VBA wechseln |
|
AutoCAD VBA : Blöcke kopieren
KlaK am 14.12.2007 um 17:38 Uhr (0)
Hallo Cuervo,ich habe mit Deinem Code ein paar Probleme (sehr unübersichtlich)Zunächst: Ist GetDrawing eine Funktion oder ein Sub ?Du rufst es zweimal direkt hintereinander aufAnschließend landest Du in einer Endlosschleife wenn AutoCAD nicht zur Verfügung steht.Jetzt prüfst Du ob der Block vorhanden ist.Findest Du ihn soll eine Kopie in die Zeichnung eingefügt werden.Nur sollte hier nicht BlockObj.InsertBlock stehen sondernThisDrawing.ModelSpace.InsertBlockDu willst den Block ja in die Zeichnung einfügen ...
|
| In das Form AutoCAD VBA wechseln |